home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 001-025 / scopedisk6 / arexx / sizeblk / sizeblk.rexx < prev    next >
OS/2 REXX Batch file  |  1995-03-18  |  645b  |  27 lines

  1. /* Sizeblk.rexx    Shows recursive function.  -Dave Haynie */
  2.  
  3. parse arg dir .
  4. blocks = countblock(dir)
  5. say 'Total of' blocks 'blocks in directory' '9b'x'3m'dir'9b'x'0m'
  6.  
  7. exit
  8.  
  9. countblock : procedure
  10.    arg dir
  11.    blocks = 0
  12.    files = showdir(dir,'file')
  13.    dirs = showdir(dir,'dir')
  14.    call pragma 'Directory',dir
  15.    do while files ~= ''
  16.       parse var files oner .
  17.       files = delword(files,1,1)
  18.       blocks = blocks + subword(statef(oner),3,1) + 1
  19.    end
  20.    do while dirs ~= ''
  21.       parse var dirs oner .
  22.       dirs = delword(dirs,1,1)
  23.       blocks = blocks + countblock(oner) + 1
  24.    end
  25.    call pragma 'Directory','/'
  26.    return blocks
  27.